const express = require('express');
const router = express.Router();
const userController = require('../controllers/userController');
const { authMiddleware, adminMiddleware } = require('../middleware/auth');

// 用户修改自己的密码（只需要登录，不需要管理员权限）
router.put('/change-password', authMiddleware, userController.changePassword);

// 用户更新自己的头像（只需要登录，不需要管理员权限）
router.put('/update-avatar', authMiddleware, userController.updateAvatar);

// 所有其他用户路由都需要管理员权限
router.use(authMiddleware, adminMiddleware);

// 获取用户列表
router.get('/', userController.getUserList);

// 获取用户详情
router.get('/:id', userController.getUserDetail);

// 创建用户
router.post('/', userController.createUser);

// 批量删除用户
router.post('/batch-delete', userController.batchDeleteUsers);

// 更新用户
router.put('/:id', userController.updateUser);

// 修改用户状态
router.put('/:id/status', userController.updateUserStatus);

// 重置用户密码
router.put('/:id/password', userController.resetUserPassword);

// 删除用户
router.delete('/:id', userController.deleteUser);

module.exports = router;
